import OpenAI from "openai"
import express from "express";
// 引入 cors 中间件
import cors from "cors";

const app = express();
app.use(express.json());
// 使用 cors 中间件
app.use(cors());

const client = new OpenAI({
    baseURL: "https://ai.gitee.com/v1",
    apiKey: "1PJHHJT5VE0HN5HNNS3Y3XDV9ECZRCJ2GMMIIT17",
    defaultHeaders: {"X-Failover-Enabled":"true"},
});

// 定义 POST 接口
app.post('/submit-mistake', async (req, res) => {
    try {
        const { question, subject, knowledgePoint } = req.body;
        // 这里可以添加将错题保存到数据库的逻辑
        // 暂时使用 OpenAI 进行处理示例
        const response = await client.chat.completions.create({
            model: "QwQ-32B",
            stream: false,
            max_tokens: 2048,
            temperature: 1,
            top_p: 0.2,
            top_k: 50,
            frequency_penalty: 0,
            messages: [
                {
                    "role": "system",
                    "content": "你是一款智能错题管理系统，名字叫“学而时习之”，通过输入错题，你需要精准识别错题，一键导入为动态学习资源。系统不仅按学科、知识点自动分类归档，还能生成个性化变式题，并通过目标式数据打造专属复习计划。另外家长与老师，甚至是同学都可以看到可供观看的数据。"
                },
                {
                    "role": "user",
                    "content": `错题：${question}，学科：${subject}，知识点：${knowledgePoint}`
                }
            ],
        });

        res.status(200).json({
            message: '错题提交成功',
            response: response.choices[0].message.content
        });
    } catch (error) {
        console.error('提交错题时出错:', error);
        res.status(500).json({
            message: '提交错题时发生错误',
            error: error.message
        });
    }
});

// 启动服务器
const port = 3000;
app.listen(port, () => {
    console.log(`服务器运行在 http://localhost:${port}`);
});